package org.znxs.znmanus.tools;

import lombok.extern.slf4j.Slf4j;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.springframework.ai.tool.annotation.Tool;
import org.springframework.ai.tool.annotation.ToolParam;

import java.io.IOException;

/**
 * 适用于 ai—agent 网页内容爬取工具类
 */
@Slf4j
public class WebScrapingTool {

    @Tool(description = "爬取指定url的网页内容，再网页搜索之后，从搜索的网页中的url链接可以爬取网页内容")
    public String scrapWebPage(@ToolParam(description = "需要爬取的网页url") String url) {
        try {
            // 使用jsoup进行网页内容爬取
            Document elements = Jsoup.connect(url).get();
            log.info("页面爬取成功：\n{}", elements.html());
            return elements.html();
        } catch (IOException e) {
            log.error("页面爬取失败", e);
            return String.format("爬取网页失败：%s", e);
        }
    }


}
